DS3 to ASI conversion is necessary in many data transport applications. DS3 RSM (Remote Satellite Modulation) packets are transmitted at 44.736 Mhz. The information rate is defined by the Viterbi code and symbol rate. The information rate is a constant bit rate. In the MPEG-2 encoder and transcoder, the information within the DS3 payload is MPEG-2 transport packets. Since the information rate and DS3 rate are different, some DS3 packets will contain MPEG-2 packets, while some DS3 packets will be null. The MPEG-2 packets are then transmitted over ASI transport.
When converting DS3 to ASI, the DS3 headers must be stripped and the MPEG-2 transport information must be extracted. Data is present for some DS3 packets, but not present in other packets, therefore, the extracted MPEG-2 packets output over an ASI transport stream is not output at a constant bit rate, but is bursty. The MPEG-2 data is typically rate converted to provide constant ASI bit rate at the information rate. This is performed by writing the extracted MPEG-2 packets into a buffer (e.g., a First-In-First Out (FIFO) memory), then reading the data from the buffer at the information rate.
This technique requires memory for the FIFO. Typically 10-15 packets are stored in the FIFO, which would require up to 15*188 or 2820 bytes of memory for each channel. This amount of memory is costly in a field programmable gate array (FPGA).
The present invention is therefore directed to the problem of developing a method and apparatus for converting DS3 to ASI using less memory.